"""
隐性等待implicitly_wait() 会在约定好的时间内持续检测元素，页面全部刷新好才执行下面的操作，如果超过约定时间未找到就报错
页面超时set_page_load_timeout，一般情况下不建议使用，因为超时会立马报错
显性等待:等待xx时间，直到元素出现执行某个元素
title_is 判断页面title和预期title是否一致
title_contains(title) 判断页面title是否包含预期title是否一致
presence_of_element_located()用于检查某个元素是否出现，元素不一定可见   是否加载到dom数
presence_of_all_elements_located(loc1,loc2)用于检查所有元素是否出现
url_contains(url)传入url，包含时返回true
url_matches(url)传入 url，包含时返回true
url_changes(url)传入url，不匹配时返回true
visibility_of_element_located(loc) 参数是locator，判断元素是否在页面DOM中，如果在并且可见返回True,否则返回false   是否加载到dom数且宽高大于0
visibility_of(WebElement)参数是元素，判断元素是否在页面DomZHONG ,如果在并且可见返回true，则返回false
"""
import time
from selenium import webdriver
from selenium.webdriver.common.by import By
from selenium.webdriver.support.wait import WebDriverWait
from selenium.webdriver.support import expected_conditions as EC
drive = webdriver.Chrome()
drive.maximize_window()
# drive.set_page_load_timeout(3) #页面超时报异常
drive.get("https://www.baidu.com")
locate=(By.ID,'kw')
WebDriverWait(drive,3).until(EC.presence_of_element_located(locate),"找不到这个元素")
drive.find_element(By.ID,'kw').send_keys("selenium")
time.sleep(2)
drive.close()
